package pe.com.bn.sach.dao;

import java.util.List;
import pe.com.bn.sach.domain.Bnchf01Persona;
import pe.com.bn.sach.domain.Bnchf02Cliente;
import pe.com.bn.sach.domain.Bnchf13Expediente;
import pe.com.bn.sach.domain.BnhbReniec;
import pe.com.bn.sach.domain.Bnchf12Familiar;
import pe.com.bn.sach.domain.Bnchf67DireccionPers;
 


public interface ClienteDAO {
	
	public String getcountEstadoBandeja(Bnchf13Expediente bnchf13Expediente) throws Exception;
	public String getCountExpedienteEnTramitePersona(Long idPersona) throws Exception;
	public String getCountExpedienteEnTramite(Long idCliente) throws Exception;
	public List getExpedienteGeneradoPrecalificado(Long idCliente) throws Exception;
	public boolean getVerificaGeneradoPrecalificado(Long idCliente) throws Exception;
	public int ModificarEstadoCivilCliente(Bnchf02Cliente Bnchf02Cliente,Bnchf01Persona Bnchf01Persona,Bnchf67DireccionPers Bnchf67DireccionPers) throws Exception;
	public List listFamiliar(Bnchf02Cliente c) throws Exception;
	public Bnchf02Cliente forinsert(
			Bnchf02Cliente Bnchf02Cliente
			) throws Exception;
	public Bnchf02Cliente forinsertcommit(
			Bnchf02Cliente Bnchf02Cliente
			) throws Exception;
	public int clientesoltero(Bnchf02Cliente bnchf02Cliente) throws Exception;
	public List listClientesinParam() throws Exception;
	public List listCliente(Bnchf02Cliente Bnchf02Cliente) throws Exception;
	public Long MAXIDCLIENTE() throws Exception;
	public Bnchf02Cliente RegistraCliente(
			Bnchf02Cliente Bnchf02Cliente,
			Bnchf01Persona Bnchf01Persona,
			//Bnchf03Trabajo Bnchf03Trabajo,
			Bnchf67DireccionPers Bnchf84DireccionPers
			) throws Exception;
	public void GuardaFamiliar(
			Bnchf02Cliente Bnchf02Cliente,
			Bnchf01Persona Bnchf01Persona,
			//Bnchf03Trabajo Bnchf03Trabajo,
			Bnchf12Familiar Bnchf12Familiar, 
			Bnchf67DireccionPers Bnchf84DireccionPers
			) throws Exception;
	public List ListFamiliar(Bnchf12Familiar Bnchf12Familiar)throws Exception;
	public Bnchf02Cliente getCliente(Bnchf02Cliente Bnchf02Cliente)throws Exception;
	public void ActualizadatosCliente(
			Bnchf02Cliente Bnchf02Cliente
			
			) throws Exception;
	public void ActualizarCliente(
			Bnchf02Cliente Bnchf02Cliente,
			Bnchf01Persona Bnchf01Persona,
			//Bnchf03Trabajo Bnchf03Trabajo,
			Bnchf67DireccionPers Bnchf84DireccionPers
			) throws Exception;
	public void ActualizarFamiliar(
			Bnchf02Cliente bnchf02Cliente,
			Bnchf01Persona bnchf01Persona,
			//Bnchf03Trabajo bnchf03Trabajo,
			Bnchf67DireccionPers bnchf84DireccionPers
			) throws Exception;
	public int ActualizarEstado(
			Bnchf02Cliente Bnchf02Cliente
			) throws Exception;
	public int ExisteCliente(Bnchf02Cliente bnchf02Cliente) throws Exception;
	
	public List SearchPopup(Bnchf02Cliente Bnchf02Cliente)throws Exception;
	public Bnchf02Cliente getFindPopupCliente(Bnchf02Cliente Bnchf02Cliente)throws Exception;
	public Bnchf02Cliente getFindConyugue(Bnchf02Cliente Bnchf02Cliente)throws Exception;
	//busca datos de la conyuge
	public Bnchf02Cliente getFindPopupPersona(Bnchf02Cliente Bnchf02Cliente)throws Exception;
	public Bnchf02Cliente FindPopup(Bnchf02Cliente Bnchf02Cliente)throws Exception;

	public BnhbReniec buscarFoto(String dni) throws Exception;
	public BnhbReniec buscarFirma(String dni) throws Exception;
	
	
}
